package com.bjfu.model;


import com.fasterxml.jackson.annotation.JsonProperty;

public class UserInfo {


    @JsonProperty("user_id")
    private Long userId;  // 用户ID

    @JsonProperty("team_id")
    private Long teamId;  // 团队ID

    private String name;  // 成员姓名

    @JsonProperty("avatar_url")
    private String avatarUrl;  // 头像URL

    @JsonProperty("research_field")
    private String researchField;  // 研究方向

    private Integer status;  // 状态，0草稿，1待审核，2已发布，3审核失败，4隐藏

    private String bio;  // 个人简介

    @JsonProperty("apply_reason")
    private String applyReason;   // 申请加入的理由
    private String email;//邮箱

    public UserInfo() {
    }

    public UserInfo(Long userId, Long teamId, String name, String avatarUrl, String researchField, Integer status, String bio, String applyReason, String email) {
        this.userId = userId;
        this.teamId = teamId;
        this.name = name;
        this.avatarUrl = avatarUrl;
        this.researchField = researchField;
        this.status = status;
        this.bio = bio;
        this.applyReason = applyReason;
        this.email = email;
    }

    // Getters and Setters
    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public Long getTeamId() {
        return teamId;
    }

    public void setTeamId(Long teamId) {
        this.teamId = teamId;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAvatarUrl() {
        return avatarUrl;
    }

    public void setAvatarUrl(String avatarUrl) {
        this.avatarUrl = avatarUrl;
    }

    public String getResearchField() {
        return researchField;
    }

    public void setResearchField(String researchField) {
        this.researchField = researchField;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getBio() {
        return bio;
    }

    public void setBio(String bio) {
        this.bio = bio;
    }


    public String getApplyReason() {
        return applyReason;
    }

    public void setApplyReason(String applyReason) {
        this.applyReason = applyReason;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    @Override
    public String toString() {
        return "UserInfo{" +
                "userId=" + userId +
                ", teamId=" + teamId +
                ", name='" + name + '\'' +
                ", avatarUrl='" + avatarUrl + '\'' +
                ", researchField='" + researchField + '\'' +
                ", status=" + status +
                ", bio='" + bio + '\'' +
                ", applyReason='" + applyReason + '\'' +
                ", email='" + email + '\'' +
                '}';
    }
}
